﻿namespace B.S.BaseData.ReadAPI.Dtos.Users
{
    /// <summary>
    /// 用户列表查询参数Dto
    /// </summary>
    public class GetUserDto
    {
        /// <summary>
        /// 用户ID（可选，精确查找）
        /// </summary>
        public int UserId { get; set; } = 0;
        /// <summary>
        /// 用户名（模糊查询）
        /// </summary>
        public string? UserName { get; set; }
        /// <summary>
        /// 手机号（模糊查询）
        /// </summary>
        public string? Phone { get; set; }
        /// <summary>
        /// 会员等级（精确匹配）
        /// </summary>
        public string? MembershipLevel { get; set; }
        /// <summary>
        /// 用户标签（模糊查询）
        /// </summary>
        public string? UserTags { get; set; }
        /// <summary>
        /// 注册渠道（精确匹配）
        /// </summary>
        public string? RegistrationChannel { get; set; }
        /// <summary>
        /// 是否启用（用户状态，true=正常，false=禁用）
        /// </summary>
        public bool? IsEnabled { get; set; }
        /// <summary>
        /// 注册起始时间（大于等于）
        /// </summary>
        public DateTime? RegisterTimeStart { get; set; }
        /// <summary>
        /// 注册结束时间（小于等于）
        /// </summary>
        public DateTime? RegisterTimeEnd { get; set; }
        /// <summary>
        /// 消费金额最小值
        /// </summary>
        public decimal? ConsumptionAmountMin { get; set; }
        /// <summary>
        /// 消费金额最大值
        /// </summary>
        public decimal? ConsumptionAmountMax { get; set; }
        /// <summary>
        /// 当前页码（从1开始）
        /// </summary>
        public int pageIndex { get; set; } = 1;
        /// <summary>
        /// 每页条数
        /// </summary>
        public int pageSize { get; set; } = 10;
    }

    /// <summary>
    /// 用户列表响应Dto
    /// </summary>
    public class GetUserReponseDto
    {
        /// <summary>
        /// 用户ID
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 用户名
        /// </summary>
        public string UserName { get; set; }

        /// <summary>
        /// 手机号
        /// </summary>
        public string Phone { get; set; }
        /// <summary>
        /// 是否启用 用户状态（true=正常，false=禁用）
        /// </summary>
        public bool IsEnabled { get; set; } = false;
        /// <summary>
        /// 会员等级
        /// </summary>
        public string MembershipLevel { get; set; }
        /// <summary>
        /// 消费金额
        /// </summary>
        public decimal ConsumptionAmount { get; set; }
        /// <summary>
        /// 可用积分
        /// </summary>
        public int AvailablePoints { get; set; }
        /// <summary>
        /// 订单记录数
        /// </summary>
        public int OrderLogs { get; set; }
        /// <summary>
        /// 用户的性别。可以是 "男性", "女性", 或 "保密"。
        /// </summary>
        public string Gender { get; set; }

        /// <summary>
        /// 用户的生日。可空类型，未选择时为null。
        /// </summary>
        public DateTime? Birthday { get; set; }

        /// <summary>
        /// 用户所在的城市。
        /// </summary>
        public string City { get; set; }

        /// <summary>
        /// 用户的职业。
        /// </summary>
        public string Occupation { get; set; }

        /// <summary>
        /// 用户的个性签名。
        /// </summary>
        public string PersonalSignature { get; set; }

    }
}
